package com.kehutong.crm.service;

import org.coraframework.inject.ImplementedBy;
import org.coraframework.json.JSONObject;

import com.kehutong.crm.entity.Tag;
import com.kehutong.crm.service.impl.TagServiceImpl;

/**
 * 客户标签服务类
 * @author: liukunlong
 * @date: 2021-03-04 20:00
 */
@ImplementedBy(TagServiceImpl.class)
public interface TagService {
    /**
     * 根据条件获取客户标签列表
     * @param jsonObject 查询对象
     * @return 跟进记录列表
     * @throws Exception 操作异常
     */
    Object getTagList(JSONObject jsonObject) throws Exception;

    /***
     * 根据客户标签标志获取客户标签信息
     * @param id 客户标签标志
     * @return 客户标签信息对象
     * @throws Exception 操作异常
     */
    Object getTagById(String id) throws Exception;


    /**
     * 保存客户标签
     * @param tag 客户标签对象
     * @return 操作结果
     * @throws Exception 操作异常
     */
    Object saveTag(Tag tag) throws Exception;


    /**
     * 更新客户标签
     * @param tag 客户标签对象
     * @return 操作结果
     * @throws Exception 操作异常
     */
    Object updateTag(Tag tag) throws Exception;


    /***
     * 根据客户标签标志删除客户标签信息
     * @param id 客户标签标志
     * @return 操作结果
     * @throws Exception 操作异常
     */
    Object deleteTagById(String id) throws Exception;
}
